Contents
Issue 51, November 1999
News
Keep up with all that’s new.
Safecall Defined
Brian Long explains Delphi’s safecall reserved word in depth, showing its work in handling exceptions in your COM and Automation applications.
Beating The System: Taming the File System, 1
Here’s a shock: Dave Jewell is just a tiny bit jealous of Visual Basic programmers! The reason? The FSO (File System Library), which gives easy access to all kinds of information about the Windows file system. So this month he sets out to put matters right by building his very own 100% pure Delphi file system class.
One Last Compile...
If I had a hammer.
Remote Monitoring
Paul Warren has found a neat way to monitor the output of an expensive instrument control and data acquisition package on an intranet, using a web technique called client pull.
Under Construction: Delphi 5 InternetExpress, 2
Bob Swart continues his exploration of Delphi 5’s InternetExpress technology. This month, Bob discusses how to limit the amount of data being sent from the server to the browser, how to handle reconcile errors, and even how to use the technology without using a MIDAS licence.
Delphi Junction: Solution
The solution to last month’s crossword puzzle. See how you got on!
Algorithms Alfresco: Re-Make, Re-Model
Julian Bucknall investigates Delphi’s floating point support, with the full low-down on which floating point types to use, warnings on their limits of accuracy, and tips on how to dramatically improve the efficiency of your floating point calculations.
The Observer Pattern
Peter Hinrichsen has more advice on making the most of design patterns
in Delphi. This time round, he elucidates the observer pattern, whose intent
is (to quote the Gang of Four): ‘to define a one-to-many dependency between objects so that when one object changes state, all its dependants are notified and updated automatically’. Lots of practical real-world stuff here.
COM Corner: Efficient Variants
Steve Teixeira has been feeling sorry for the poor neglected Variant type.
He feels it’s got a bad press as being an inefficient way to do Automation. To set things straight he’s come up with a great way to get efficient Variants, through the use of dispid caching. The result? Significant speed improvements.
The Delphi Clinic
Brian Long with more answers to your queries, including: getting meaningful file i/o error messages, how to cut corners with the type library editor, customised docking behaviour, and a hard-to-see resource leak with CreateProcess use.